import { defHttp } from "@/utils/http";
export interface RoleVO {
	id: number;
	name: string;
	code: string;
	sort: number;
	status: number;
	type: number;
	createTime: Date;
}

export interface RolePageReqVO extends PageParam {
	name?: string;
	code?: string;
	status?: number;
	createTime?: Date[];
}

export interface UpdateStatusReqVO {
	id: number;
	status: number;
}

export interface RoleExportReqVO {
	name?: string;
	code?: string;
	status?: number;
	createTime?: Date[];
}

// 查询角色列表
export function getRolePage(params: RolePageReqVO) {
	return defHttp.get({ url: "/system/role/page", params });
}

// 查询角色（精简)列表
export const getSimpleRoleList = () => {
	return defHttp.get({ url: "/system/role/simple-list" });
};

// 查询角色（精简)列表
export function listSimpleRoles() {
	return defHttp.get({ url: "/system/role/list-all-simple" });
}

// 查询角色详情
export function getRole(id: number) {
	return defHttp.get({ url: `/system/role/get?id=${id}` });
}

// 新增角色
export function createRole(data: RoleVO) {
	return defHttp.post({ url: "/system/role/create", data });
}

// 修改角色
export function updateRole(data: RoleVO) {
	return defHttp.put({ url: "/system/role/update", data });
}

// 修改角色状态
export function updateRoleStatus(data: UpdateStatusReqVO) {
	return defHttp.put({ url: "/system/role/update-status", data });
}

// 删除角色
export function deleteRole(id: number) {
	return defHttp.delete({ url: `/system/role/delete?id=${id}` });
}

// 导出角色
// export function exportRole(params: RoleExportReqVO) {
// 	return defHttp.download(url: "/system/post/export", { params }, "导出角色.xls");
// }
